(function() {
  var MyListView, WineListItemView, WinesListView, mediator,
    __hasProp = {}.hasOwnProperty,
    __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor; child.__super__ = parent.prototype; return child; };

  mediator = require('mediator');

  MyListView = require('views/base/custom/my_list_view');

  WineListItemView = require('./wines_list_item_view');

  module.exports = WinesListView = (function(_super) {

    __extends(WinesListView, _super);

    WinesListView.name = 'WinesListView';

    function WinesListView() {
      return WinesListView.__super__.constructor.apply(this, arguments);
    }

    WinesListView.prototype.tagName = 'ul';

    WinesListView.prototype.className = 'wines-list';

    WinesListView.prototype.id = 'wines-list';

    WinesListView.prototype.clickedItemInternalEventName = 'wines-list:clickedItem';

    WinesListView.selectedItemEventName = 'wines-list:CurrentSelected';

    WinesListView.prototype.getSelectedItemEventName = function() {
      return WinesListView.selectedItemEventName;
    };

    WinesListView.prototype.getView = function(item) {
      var view;
      console.debug('WinesListView#getView');
      view = new WineListItemView({
        model: item
      });
      return WinesListView.__super__.getView.call(this, view);
    };

    WinesListView.prototype.render = function() {
      WinesListView.__super__.render.apply(this, arguments);
      this.renderAllItems();
      return $(this.containerSelector).html(this.$el);
    };

    WinesListView.prototype.afterRender = function() {
      return WinesListView.__super__.afterRender.apply(this, arguments);
    };

    return WinesListView;

  })(MyListView);

}).call(this);
